﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using SIM.Geo.BE;
using SIM.Geo.BL;

namespace SIM.Geo.SE
{
    public class SECuerpo : ISECuerpo
    {
        #region ISECuerpo Members
        /// <summary>
        /// Operacion que devuelve lista de cuerpos
        /// </summary>
        /// <returns></returns>
        public List<Cuerpo> ListarCuerpo()
        {
            try
            {
                return new BLCuerpo().ListarCuerpo();
            }
            catch (Exception)
            {

                throw;
            }
        }
        /// <summary>
        /// Operación que inserta un cuerpo
        /// </summary>
        /// <param name="cuerpo"></param>
        /// <returns></returns>
        public int InsertarCuerpo(Cuerpo cuerpo)
        {
            try
            {
                return new BLCuerpo().InsertarCuerpo(cuerpo);
            }
            catch (Exception)
            {

                throw;
            }
        }
        /// <summary>
        /// Operación que modifica un cuerpo
        /// </summary>
        /// <param name="cuerpo"></param>
        public void ModificarCuerpo(Cuerpo cuerpo)
        {
            try
            {
                new BLCuerpo().ModificarCuerpo(cuerpo);
            }
            catch (Exception)
            {

                throw;
            }
        }
        /// <summary>
        /// Operación que eliminar un cuerpo
        /// </summary>
        /// <param name="codigoCuerpo"></param>
        public void EliminarCuerpo(int codigoCuerpo)
        {
            try
            {
                new BLCuerpo().EliminarCuerpo(codigoCuerpo);
                
            }
            catch (Exception)
            {

                throw;
            }
        }
        /// <summary>
        /// Operación que obtiene un cuerpo por codigo
        /// </summary>
        /// <param name="codigoCuerpo"></param>
        /// <returns></returns>
        public Cuerpo ObtenerCuerpo(int codigoCuerpo)
        {
            try
            {
                return new BLCuerpo().ObtenerCuerpo(codigoCuerpo);
                
            }
            catch (Exception)
            {

                throw;
            }
        }

        #endregion

        #region ISECuerpo Members

        /// <summary>
        /// Operación que devuelve una lista para llenar el ComboBox, DropdownList
        /// </summary>
        /// <returns></returns>
        public List<ListItemInt> ObtenerListItem()
        {
            try
            {
                return new BLCuerpo().ObtenerListItem();
                
            }
            catch (Exception)
            {

                throw;
            }
        }

        #endregion
        #region ISECuerpo Members

        public List<CuerpoResponse> ListarCuerpo1()
        {
            return new BLCuerpo().ListarCuerpo1();
        }

        #endregion

        #region ISECuerpo Members

        /// <summary>
        /// Operación que devuelve lista por nombres
        /// </summary>
        /// <param name="nombreCuerpo"></param>
        /// <returns></returns>
        public List<Cuerpo> ListarCuerpoPorNombre(string nombreCuerpo)
        {
            try
            {
                return new BLCuerpo().ListarCuerpoPorNombre(nombreCuerpo);
            }
            catch (Exception)
            {

                throw;
            }
        }

        #endregion

        #region ISECuerpo Members
        public int GenerarCodigoCuerpo()
        {
            try
            {
                return new BLCuerpo().GenerarCodigoCuerpo();
            }
            catch (Exception)
            {

                throw;
            }
        }
        #endregion

        #region ISECuerpo Members


        public List<Cuerpo> ListarCuerpoPorZona(int codigoZona)
        {
            try
            {
                return new BLCuerpo().ListarCuerpoPorZona(codigoZona);
            }
            catch (Exception)
            {
                
                throw;
            }
        }

        public List<ListItemInt> ObtenerListItem1(int codigoZona)
        {
            try
            {
                return new BLCuerpo().ObtenerListItem1(codigoZona);
            }
            catch (Exception)
            {
                
                throw;
            }
        }

        #endregion
    }
}